Local Load Balancing for Data-Parallel Branch-and-Bound
نویسنده
چکیده
Branch-and-bound (B&B) is a well-known and general combinatorial optimisation technique that is used especially for NP-hard problems where no special purpose algorithm is known. Because of the high problem complexity, parallel implementations are required for speeding up the computations. Algorithms with high and stable efficiency, i.e., utilisation of the processing elements (PEs), are desired. This can be achieved by load balancing techniques that intervene if the PE utilisation worsens. We use a common version of the sequential B&B formulation as a basis for the parallel algorithm from [8] (see Figure 1). The initialisation is hidden in a function call and is discussed in detail in [1]. The main data structure, the OPEN set, stores single nodes of the search tree. Any search strategy (best-first, depth-first, etc.) can be applied. The dataparallel B&B works quite similarly to the serial algorithm, except that each PE has its own OPEN set. All PEs execute the main loop of the B&B synchronously: select a node from its OPEN set, expand it, insert the evaluated successors back into the OPEN set, and update the incumbent if necessary. After a couple of iterations, some PEs become idle because their OPEN sets are empty or their memory space is exhausted. In both cases, nodes of the local OPEN sets have to be redistributed such that a maximum number of PEs can continue processing. Load balancing is the task of equilibrating the load as evenly as possible. The easier task of load sharing is to supply each PE at least with some load. For MIMD computers, many approaches have already been studied [4]. Recently, parallel B&B has been investigated for SIMD computers. A global approach is to map busy to idle PEs in a one-to-one-correspondence and to transfer nodes by global communication. This approach has been applied to the IDA* algorithm in [6, 7]. Static or dynamic trigger conditions indicate when load balancing is reasonable (see [3] also).
منابع مشابه
An efficient load balancing strategy for grid-based branch and bound algorithm
The most popular parallelization approach of the branch and bound algorithm consists in building and exploring in parallel the search tree representing the problem being tackled. The deployment of such parallel model on a grid rises the crucial issue of dynamic load balancing. The major question is how to efficiently distribute the nodes of an irregular search tree among a large set of heteroge...
متن کاملBranch and Bound Based Load Balancing for Parallel Applications
Many parallel applications are highly dynamic in nature. In some, computation and communication patterns change gradually during the run; in others those characteristics change abruptly. Such dynamic applications require an adaptive load balancing strategy. We are exploring an adaptive approach based on multi-partition object-based decomposition, supported by object migration. For many applicat...
متن کاملLoad Balancing for Parallel Branch and Bound
A strategy for parallelization of a state-of-the-art Branch and Bound algorithm for weighted CSPs and other graphical model optimization tasks is introduced: independent worker nodes concurrently solve subproblems, managed by a Branch and Bound master node; the problem cost functions are used to predict subproblem complexity, enabling efficient load balancing, which is crucial for the performan...
متن کاملA New Parallel Approach to the Constrained Two-Dimensional Cutting Stock Problem
In this paper we present a new parallelization of an efficient best-first branch-and-bound algorithm to solve the constrained two-dimensional single stock guillotine cutting stock problem (CSP) to optimality. The underlying sequential branch-and-bound algorithm is based on an exact version of Wang's heuristic suggested by Viswanathan and Bagchi. In our algorithm we improve the upper bound and i...
متن کاملAdaptive Quality Equalizing: High-Performance Load Balancing for Parallel Branch-and-Bound Across Applications and Computing Systems
In this paper, we present an adaptive version of our previously proposed quality equalizing (QE) load balancing strategy that attempts to maximize the performance of parallel branch-and-bound (B&B) by adapting to application and target computing system characteristics. Adaptive QE (AQE) incorporates the following salient adaptive features: (1) Anticipatory quantitative and qualitative load bala...
متن کامل